package com.spring.demo11.eg1;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.support.ResourceBundleMessageSource;

/**
 * @author vhans
 */
@Configuration
public class MainConfig1 {
    /**
     * bean名称必须是messageSource：
     * org.springframework.context.support.AbstractApplicationContext#refresh内部会调用
     * org.springframework.context.support.AbstractApplicationContext#initMessageSource
     * 这个方法用来初始化MessageSource,方法内部会查找当前容器中是否有messageSource名称的bean，如果
     * 有就将其作为处理国际化的对象，如果没有找到，此时会注册一个名称为messageSource的MessageSource
     */
    @Bean
    public ResourceBundleMessageSource messageSource() {
        ResourceBundleMessageSource result = new ResourceBundleMessageSource();
        // 指定国际化化配置文件的位置，注意不包含【语言_国家.properties】含这部分
        result.setBasename("config/demo11/message");
        result.setDefaultEncoding("UTF-8");
        return result;
    }
}
